1. Field of Art
The present invention generally relates to the field of event-based computer systems, and more specifically, to analyzing event-based computer systems by capturing data while the event-based system processes an event.
2. Description of the Related Art
Recently, the availability and amount of real-time information has significantly increased. This increased data availability has also increased the use of event-based computing, which allows for real-time monitoring, analysis and response to events. In event-based, or Complex Event Processing (CEP), systems, incoming or input events are monitored for pre-defined patterns and defined output actions are taken upon detecting a pattern. Because of this detection and response behavior, CEP systems are frequently used in applications which require proactive response to patterns in changing data, such as real-time algorithmic trading applications, risk assessment applications, compliance applications, telecommunication applications, digital battle applications, supply chain monitoring and terrorist tracking.
However, to accurately respond to changing event types or implementation environments, CEP systems need to be continually revised. Analyzing the historical performance of CEP systems increases the accuracy and effectiveness of these revisions. Accurate analysis of historical CEP system performance requires capturing, storing and replaying previously processed real-time events and metadata describing event processing. For example, metadata indicating input event arrival date and time needs to be preserved so the CEP analysis processes input events in the same sequence as the initial event processing. Hence, storing metadata describing event processing permits a subsequent, controlled, replay of the event processing to precisely simulate prior CEP system performance.
Often, large time spans, such as months or years, of previously processed events need to be analyzed to identify new or emerging event types or to evaluate overall CEP system performance. However, it is not practical to analyze a large quantity of data at the original arrival and/or processing rate. Replaying the stored data in a faster than wall clock fashion while maintaining the correct date and time sequence reduces analysis time without impairing accuracy. Hence, if the CEP system uses timers or other temporal calculations, the timers or other temporal calculations must also be accelerated to match the data replay rate to ensure that the CEP system has a uniform view of time for consistent operation.
However, existing methods for CEP system analysis require use of a bespoke-from-scratch development method, resulting in a long development cycle and a complex maintenance process for the CEP system.